package tv.athena.live.api.channel

import com.yy.liveplatform.proto.nano.LpfChannel
import tv.athena.live.api.IDataCallback
import tv.athena.live.api.callback.Callback
import tv.athena.live.base.arch.IComponentApi

/**
 * Created by xudadade on 2019-08-09
 *
 */

interface ChannelApi : IComponentApi {
    fun inviteUserToChannelReq(
            anchorUid: Long,
            sid: Long,
            toUids: LongArray,
            extend: String,
            callback: Callback?
    )

    fun getRoomNotice(uid: Long, sid: Long, callback: IDataCallback<LpfChannel.GetNoticeResp>?)

    fun setRoomNotice(uid: Long, sid: Long, content: String, callback: IDataCallback<LpfChannel.SetNoticeResp>)

    fun editChannelPassword(
            topSid: Long, password: String,
            callback: IDataCallback<LpfChannel.EditChannelPasswordResp>?
    )

    fun leaveChatRoom(mUid: Long, topSid: Long, callback: ChatRoomCallback?)

    fun joinChatRoom(myUid: Long, topSid: Long, callback: ChatRoomCallback?)
}